The present application relates to networking, and more particularly relates to techniques for dynamically establishing and configuring a liveliness detection session for a local repair connection of a connection.
Connection-oriented protocols are widely used to transport data across computer networks. In a connection-oriented protocol, a connection is set up between two end points in a network, usually prior to data transmission. For example, nodes or network devices at the end points of a connection may use a preliminary protocol to establish an end-to-end path traversed by the connection before any data is sent. A connection is then signaled using the established path and the connection (with its associated path) is used to transport data between the end points. The first node in the path is referred to as an ingress node and the last node in the path is referred to as an egress node. Examples of connection-oriented protocols include circuit switching protocols such as Asynchronous Transfer Mode (ATM) protocol, Frame Relay, Multi-Protocol Label Switching (MPLS), and others.
Multi-Protocol Label Switching (MPLS) is a connection-oriented mechanism that emulates some properties of a circuit-switched network over a packet-switched network. It was designed to provide a unified data-carrying service for both circuit-based clients and packet-switching clients that provide a datagram service model. It can be used to carry many different kinds of traffic, including IP packets, as well as native ATM, SONET, and Ethernet frames. In MPLS, a connection between two end points is referred to as a Label Switched Path (LSP). Various signaling protocols such as Label Distribution Protocol (LDP), Resource Reservation Protocol-Traffic Engine (RSVP-TE), Constraint-based Routed LDP (CR-LDP), and others may be used to set up an LSP. Nodes in an LSP are typically routers, and are referred to as Label Switching Routers (LSRs). The first router in an LSP is referred to as an ingress router and the last router in an LSP is referred to as an egress router. Routers in between the ingress router and the egress router are referred to as transit LSRs. LSPs are unidirectional and enable a packet to be label switched through the MPLS network from one end point to another.
In some instances, a connection (such as an LSP in an MPLS network) may experience data transmission disruptions due to failures of one or more facilities (e.g., nodes or links) in the path traversed by the connection. To safeguard against such disruptions, one or more alternate connections may be determined for the original connection that enable failed facilities along the path of the original connection to be bypassed. These alternate connections are referred to as local repair connections. Each local repair connection is associated with a path (referred to as a backup path) that originates at a first node in the path associated with the original connection and ends at a second node in the path associated with the original connection, where the second node is downstream from the first node. The first node is referred as a Point of Local Repair (PLR) and the second node is referred to as a merge point (MP). A connection (and its associated path) is said to be protected if at least one local repair connection has been established for that connection. A facility in a connection is said to be protected if at least one local repair connection has been configured that does not use that facility.
Different connection-oriented protocols may use different techniques to set up and maintain local repair connections. For example, in the case of MPLS, a technique known as Fast Reroute (FRR) may be used to dynamically set up local repair connections (referred to as backup LSPs) for LSP tunnels. In FRR, one or more backup LSPs are dynamically established for a primary LSP prior to the detection of any failures along the path traversed by the primary LSP. This a priori establishment allows the PLRs (i.e., the ingress nodes of the backup LSPs) to quickly redirect traffic through its corresponding backup path if a failure in the primary path is detected.
In addition to local repair techniques, connection-oriented protocols may also implement techniques for detecting the liveliness of a connection. Generally speaking, a connection is considered alive if there are no data plane failures (i.e., failures that prevent the transmission of data messages) along the path traversed by the connection. One mechanism that is widely used to detect the liveliness of a connection (such as an MPLS LSP) is Bidirectional Forwarding Detection (BFD). In BFD, a BFD session is manually established for a given connection at one or more end points (e.g., the ingress node and egress node) of the connection. “Hello” packets are then transmitted by the ingress node and/or the egress node. If a number of hello packets transmitted by an ingress or egress node are not received at the other node, the BFD session (and its associated connection) is considered dead.
One limitation with current methods for deploying local repair (via, e.g., FRR) and liveliness detection (via, e.g., BFD) in an MPLS network is that there is no way to dynamically establish and configure a liveliness detection session for the backup LSPs of a protected LSP. For example, although a signaling protocol such as RSVP-TE may be used to dynamically establish a backup LSP at a transit LSR of a primary LSP, there is no mechanism in RSVP-TE (or any other signaling protocol) to dynamically establish a BFD session for that backup LSP at that transit LSR.
Accordingly, techniques are desired for dynamically establishing and configuring a liveliness detection session, such as BFD, for a local repair connection of a protected connection, such as for a backup LSP of a protected LSP.